export default {
  methods: {
    toFixed(value, len = 2) {
      // 转数字.123--0.123
      const number = Number(value).toString()

      const numberarr = number.split('.')
      let intNum = numberarr[0] // 整数部分
      let deciNum = numberarr[1] // 小数部分
      // 判断整数
      if (numberarr.length < 2) {
        return getIntNum(intNum)
      }
      // 判断小数--如果不需要保留
      if (deciNum.length === len) {
        return value
      }
      // 需要截取的长度大于当前长度
      if (deciNum.length < len) {
        return getIntNum(number)
      }
      // 需要截取的长度小于当前长度
      if (deciNum.length > len) {
        const str = intNum + '.' + deciNum.substr(0, len)
        // 满5进1
        if (parseInt(deciNum.substr(len, 1)) >= 5) {
          const times = Math.pow(10, len)
          const num = ((Number(str.replace('.', '')) + 1) / times).toString()
          deciNum = num.split('.')[1]
          return getIntNum(num)
        } else {
          return str
        }
      }
      // 处理整数的函数
      function getIntNum(v) {
        if (v.indexOf('.') === -1) {
          v = v + '.'
          for (let i = 0; i < len; i++) {
            v
            v += '0'
          }
          return v
        } else {
          for (let i = 0; i < len - deciNum.length; i++) {
            v = v + '0'
          }
          console.log(v)
          return v
        }
      }
    }
  }
}
